package dao;

import domain.User;
import util.UserFileReader;

//持久层  数据的持久化
//只负责数据的读 写  不负责处理逻辑
//现阶段看到的方法内部通常都是包含了I/O  
//以后这个层次的方法看到的内部代码都是JDBC

public class UserDao {
	
	//缓存----虚拟机(内存中)---存储文件中的所有信息，有效提高底层的执行性能，如果是联机的版本，多设备读流的过程比较缓慢
	
	//负责查询一个人的信息
	//参数账号  返回值domain
	public User selectOne(String account) {
		//BufferedReader提供readLine()读一行的方法
		//高级的缓冲的字符流,构建它需要低级的字符流
//		User user = null;
//		FileReader fr = null;
//		BufferedReader reader = null;
//		try {
//			File file = new File("src//dbfile//User.txt");
//			fr = new FileReader(file);
//			reader = new BufferedReader(fr);
//			String message = reader.readLine();
//			while(message!=null) {
//				String[] values = message.split("-");//数组内 一个人的名字和密码
//				if(values[0].equals(account)) {
//					user = new User(values[0],values[1]);
//					break;
//				}
//				message = reader.readLine();
//			}
//		} catch (FileNotFoundException e) {
//			// TODO 自动生成的 catch 块
//			e.printStackTrace();
//		} catch (IOException e) {
//			// TODO 自动生成的 catch 块
//			e.printStackTrace();
//		}finally {
//			try {
//				if(reader!=null) {
//					reader.close();
//				}
//			} catch (IOException e) {
//				// TODO 自动生成的 catch 块
//				e.printStackTrace();
//			}
//			try {
//				if(fr!=null) {
//					fr.close();
//				}
//			} catch (IOException e) {
//				// TODO 自动生成的 catch 块
//				e.printStackTrace();
//			}
//		}
		return UserFileReader.getUser(account);
	}
	//增加一个用户信息
	public void addOne(User user) {
		UserFileReader.addUser(user);
	}
}
